package celda;

import objetoDeMapa.ObjetoDeMapa;

public class Celda {

	private boolean visible;
	private ObjetoDeMapa objeto;
	private boolean esManzana;
	private boolean esLlegada;
	
	public Celda() {

		this.visible = false;
		this.esLlegada = false;
	}

	public ObjetoDeMapa getObjeto() {

		return this.objeto;
	}

	public void cambiarVisibilidad() {

			this.visible = true;

	}

	public boolean verVisibilidad() {

		return this.visible;
	}

	public void agregarObjeto(ObjetoDeMapa unobjeto) {

		this.objeto = unobjeto;

	}
	
	public boolean esManzana(){
		return this.esManzana;
	}

	public void setLlegada() {
		this.esLlegada=true;
		this.cambiarVisibilidad();
		
	}
	
	public boolean esLlegada(){
		
		return this.esLlegada;
	}

	public static Celda conElemento(ObjetoDeMapa objetoDeMapa) {
		Celda celda = new Celda();
		celda.agregarObjeto(objetoDeMapa);
		return celda;
	}

	public boolean estaVacia() {
		if( this.getObjeto() == null){
			return true;
		}else{
			return false;
		}
	}
	
	public boolean estaHablilitada(){
		
		return (!this.esManzana() && this.estaVacia());

	}
	
	public void setManzana(){
		this.esManzana = true;
	}

	public void removerContenido() {
		this.objeto = null;
	}
}
